Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 22:02:58 +0000 (22:02 +0000)]
Remark on COMM_IDS.Study indexing
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 17:29:56 +0000 (17:29 +0000)]
Trigger NON_BREC_SIGHTING_SOURCES
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 17:28:48 +0000 (17:28 +0000)]
Adjust NON_BREC_SIGHTING_SOURCES docs for COMM_IDS.Studied
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 17:14:42 +0000 (17:14 +0000)]
Correct comment formatting
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 17:14:05 +0000 (17:14 +0000)]
Check NON_BREC_SIGHTING_SOURCES against departdate only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 16:47:17 +0000 (16:47 +0000)]
Enforce, or not, COMM_IDS.Studied on COMM_MEMBS
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 16:46:26 +0000 (16:46 +0000)]
Improve error message
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 16:34:42 +0000 (16:34 +0000)]
Enforce, or not, COMM_IDS.Studied on WATCHES
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 16:30:33 +0000 (16:30 +0000)]
Cannot be AnimID in WATCHES before being born
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 16:18:51 +0000 (16:18 +0000)]
Correct COMM_IDS.Studied column name references
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:43:27 +0000 (15:43 +0000)]
Check COMM_MEMBS against birthdate only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:30:04 +0000 (15:30 +0000)]
Correct error message checking ROLES.Participant against DepartDate
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:27:55 +0000 (15:27 +0000)]
Report DepartDate in REPRO_STATES error message, not EntryDate
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:25:46 +0000 (15:25 +0000)]
Execute REPRO_STATES.Date v.s. DepartDate check only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:24:27 +0000 (15:24 +0000)]
Fix check of femaleness regards REPRO_STATES
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:22:46 +0000 (15:22 +0000)]
Report DepartDate in error message when checking against DepartDate
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:20:43 +0000 (15:20 +0000)]
Execute SWELLING_SOURCES v.s. EntryDate check only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:17:08 +0000 (15:17 +0000)]
Correct comment to match code
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:15:18 +0000 (15:15 +0000)]
Fix check that requires only females be on SWELLING_SOURCES
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:14:27 +0000 (15:14 +0000)]
Improve error message
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:13:14 +0000 (15:13 +0000)]
Execute WATCHES.Date v.s. EntryDate check only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 15:10:26 +0000 (15:10 +0000)]
Use DepartDate, not EntryDate, when checking community departure
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 14:53:42 +0000 (14:53 +0000)]
Fix typo in column name in trigger code
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 14:38:17 +0000 (14:38 +0000)]
Execute community v.s. entrydate check only when necessary
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 14:29:18 +0000 (14:29 +0000)]
Document that CommID on the event detail tables are not 100% validated
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 14:24:08 +0000 (14:24 +0000)]
Correct RST section underline length
Karl O. Pinc kop@karlpinc.com [Thu, 13 Aug 2026 13:53:36 +0000 (13:53 +0000)]
Add COMM_IDS.Studied column
Karl O. Pinc kop@karlpinc.com [Wed, 12 Aug 2026 17:17:10 +0000 (17:17 +0000)]
Better explain why COMM_MEMBS might be incorporated into SIGHTINGS
It would be even better to rename SIGHTINGS to MEMBERS, and have it
show community membership. The build_sightings() function would be
renamed build_members(). And SIGHTINGS would then be a view of
MEMBERS, excluding the rows that exist in MEMBERS only because of
COMM_MEMBS.
But this probably also requires that build_members() always look at
COMM_MEMBS, last. And have some sort of special Step value.
Otherwise we wouldn't know what MEMBERS.Step value to exclude when
constructing the SIGHTINGS view.
All this is, at present, not the best use of our available time.
Karl O. Pinc kop@karlpinc.com [Wed, 12 Aug 2026 17:16:17 +0000 (17:16 +0000)]
Always use the WATCHES.CommID when constructing SIGHTINGS from EVENTS
Karl O. Pinc kop@karlpinc.com [Tue, 11 Aug 2026 22:05:20 +0000 (22:05 +0000)]
Change column name: ARRIVALS.Cycle -> ARRIVALS.Swelling
Stevan Earl [Tue, 11 Aug 2026 23:25:19 +0000 (16:25 -0700)]
docs: distinguish unknown and no-focal observations
Stevan Earl [Tue, 11 Aug 2026 23:18:43 +0000 (16:18 -0700)]
conversion: use NONE for A-record groom scans
Stevan Earl [Tue, 11 Aug 2026 22:54:22 +0000 (15:54 -0700)]
schema: prohibit NONE on location watches
Stevan Earl [Tue, 11 Aug 2026 22:34:31 +0000 (15:34 -0700)]
schema: reserve NONE for WATCHES AnimIDs
Stevan Earl [Tue, 11 Aug 2026 22:32:42 +0000 (15:32 -0700)]
feat: define the NONE no-focal AnimID
Stevan Earl [Tue, 11 Aug 2026 22:31:27 +0000 (15:31 -0700)]
docs: correct BIOGRAPHY_DATA AnimID grammar
Stevan Earl [Wed, 5 Aug 2026 23:37:14 +0000 (16:37 -0700)]
fix: corrected trigger wording from follow to event since this applies to AGSCAN and other events not only follows
(cherry picked from commit
587e15969264727c4d7a810bff56e364539a6423)
Stevan Earl [Wed, 5 Aug 2026 23:23:33 +0000 (16:23 -0700)]
fix: corrected trigger diagnostic in roles.m4 including the incorrect displayed date
(cherry picked from commit
fcfaccadf080504ce6013a8e8f1af879128be754)
Stevan Earl [Mon, 10 Aug 2026 01:21:09 +0000 (18:21 -0700)]
build: add A-record groom-scan load target
Split from grm_scan commit
fcdd838.
Stevan Earl [Mon, 10 Aug 2026 01:20:59 +0000 (18:20 -0700)]
feat: add A-record groom-scan conversion loader
Split from grm_scan commit
fcdd838.
Stevan Earl [Mon, 10 Aug 2026 01:20:59 +0000 (18:20 -0700)]
fix: allow groom-scan events on A-record watches
Split from grm_scan commit
fcdd838.
Stevan Earl [Mon, 10 Aug 2026 01:20:49 +0000 (18:20 -0700)]
build: add B-record groom-scan load target
Split from grm_scan commit
36b5c5d.
Stevan Earl [Mon, 10 Aug 2026 01:13:18 +0000 (18:13 -0700)]
feat: add B-record groom-scan conversion loader
Split from grm_scan commit
36b5c5d. The GS_comments NULL-to-empty conversion is performed in clean.sql.
Stevan Earl [Mon, 10 Aug 2026 01:09:05 +0000 (18:09 -0700)]
feat: add groom-scan role codes
Split from grm_scan commit
36b5c5d.
Stevan Earl [Mon, 10 Aug 2026 01:08:00 +0000 (18:08 -0700)]
fix: normalize missing groom-scan comments in clean
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 21:26:28 +0000 (21:26 +0000)]
Implement build_sightings()
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 19:45:13 +0000 (19:45 +0000)]
Alphabetize
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 18:31:27 +0000 (18:31 +0000)]
Correct cut-and-paste error in comment
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 17:14:32 +0000 (17:14 +0000)]
Drop the COMMUNITY_MEMBERSHIP_UPDATE_LOG table in favor of COMM_MEMB_LOG
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 17:09:50 +0000 (17:09 +0000)]
Move comm_memb_log from sokwedb schema to housekeeping
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:55:50 +0000 (16:55 +0000)]
Add example query to LOCATIONS_UTM doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:46:46 +0000 (16:46 +0000)]
Add example query to LOCATIONS_PAPER doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:24:05 +0000 (16:24 +0000)]
Add example query to SPECIES_PRESENT doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:22:50 +0000 (16:22 +0000)]
Add example query to MATINGS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:12:28 +0000 (16:12 +0000)]
Add example query to GROOMINGS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 16:09:16 +0000 (16:09 +0000)]
Add example query to HUMANS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 15:51:41 +0000 (15:51 +0000)]
Add example query to GROOM_SCANS_B doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 15:09:20 +0000 (15:09 +0000)]
Add example query of A-Record groom scans to EVENTS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 14:59:43 +0000 (14:59 +0000)]
Add example query to FOOD_EVENTS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 14:46:46 +0000 (14:46 +0000)]
Add example query to COLOBUS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 14:36:00 +0000 (14:36 +0000)]
Add example query to ARRIVALS_A doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 14:09:43 +0000 (14:09 +0000)]
Add example query to ARRIVALS doc
Karl O. Pinc kop@karlpinc.com [Wed, 5 Aug 2026 13:55:27 +0000 (13:55 +0000)]
Add example query to AGGRESSIONS doc
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 22:02:05 +0000 (22:02 +0000)]
Fix to allow colobus event behaviors
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 20:19:54 +0000 (20:19 +0000)]
Reference build_sightings() in SIGHTING_CONTROL docs
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 20:04:39 +0000 (20:04 +0000)]
Link SIGHTINGS.Step docs to SIGHTINGS and build_sightings()
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 20:14:24 +0000 (20:14 +0000)]
Document build_sightings()
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 20:03:25 +0000 (20:03 +0000)]
Move docs involving column interactions to bottom of summary section
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 18:21:46 +0000 (18:21 +0000)]
Clarify the utility in running build_swelling_states() on non-females
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 18:13:35 +0000 (18:13 +0000)]
Add example query showing sighting sources
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:53:11 +0000 (17:53 +0000)]
Change column name SIGHTINGS.Source -> SIGHTINGS.Step
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:51:35 +0000 (17:51 +0000)]
With SIGHTING_SOURCES, SIGHTING_RECORDS.Priority does not affect sightings
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:49:23 +0000 (17:49 +0000)]
Add SIGHTING_CONTROLS table, document, etc.
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:42:29 +0000 (17:42 +0000)]
Clarify that SIGHTING_RECORDS.Priority is used only for swelling
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:31:35 +0000 (17:31 +0000)]
Document where special SIGHTING_RECORDS codes cannot be used
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:30:06 +0000 (17:30 +0000)]
Prevent use of special swelling source values in NON_BREC_SIGHTING_SOURCES
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:20:34 +0000 (17:20 +0000)]
Fix so some special SIGHTING_RECORDS rows need not exist
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:16:26 +0000 (17:16 +0000)]
Load (some) SIGHTING_RECORDS during conversion
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:15:27 +0000 (17:15 +0000)]
Replace SIGHTING_RECORDS SOKWEDB special value with per-table values
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 17:01:17 +0000 (17:01 +0000)]
Enforce non-negative SIGHTING_RECORDS.Priority
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 00:02:53 +0000 (00:02 +0000)]
Change so adolesent swelling is properly included in SWELLING_STATES
Karl O. Pinc kop@karlpinc.com [Tue, 4 Aug 2026 00:00:38 +0000 (00:00 +0000)]
Require the SIGHTING_RECORDS "MANUAL" code have a Priority of 0
Karl O. Pinc kop@karlpinc.com [Mon, 3 Aug 2026 23:53:54 +0000 (23:53 +0000)]
Add an anchor for the "codes" schema
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:48:38 +0000 (21:48 +0000)]
Alphabetize
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:30:11 +0000 (21:30 +0000)]
Remove ATTENDANCE table from diagram
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:17:18 +0000 (21:17 +0000)]
Fix privleges of SIGHTINGS
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:13:50 +0000 (21:13 +0000)]
Correct the privileges of SWELLING_STATES
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:09:17 +0000 (21:09 +0000)]
Update copyright
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 21:03:57 +0000 (21:03 +0000)]
Fix grammer in error message
Stevan Earl [Tue, 4 Aug 2026 19:55:18 +0000 (12:55 -0700)]
fix: normalize blank biography maternal IDs (Problem #104)
Stevan Earl [Tue, 4 Aug 2026 19:54:56 +0000 (12:54 -0700)]
fix: normalize blank biography birth groups (Problem #103)
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 18:43:46 +0000 (18:43 +0000)]
SWELLING_SOURCES min swelling cannot exceed the max swelling
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 17:49:24 +0000 (17:49 +0000)]
SWELLING_SOURCES can only use CYCLE_STATES where SSRank is not NULL
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 17:28:36 +0000 (17:28 +0000)]
Fix formatting of error message
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 16:54:41 +0000 (16:54 +0000)]
Change build_swelling_states() so that it uses CYCLE_STATES.SSRank
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 16:36:13 +0000 (16:36 +0000)]
Add the CYCLE_STATES.SSRank column
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 16:25:20 +0000 (16:25 +0000)]
Add nullunique substitution; for unique except for NULL values
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 15:37:55 +0000 (15:37 +0000)]
Fix build_swelling_states() to remove data on former females
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 01:24:31 +0000 (01:24 +0000)]
Add a "Return Value" section
Karl O. Pinc kop@karlpinc.com [Fri, 31 Jul 2026 01:20:20 +0000 (01:20 +0000)]
Create and document build_swelling_states() function